package com.todo.user.application.service;


import com.todo.user.application.entity.bo.UserInfoDetailBO;
import com.todo.user.application.entity.bo.UserSimplyInfoBO;

import java.util.List;

/**
 * @author zhangwenxiang
 * @date 2024/4/7 20:27
 * @description
 */
public interface UserInfoService {

    /**
     * 更新用户详情信息
     *
     * @param userInfoDetailBO
     * @return
     */
    Boolean updateUserInfoDetail(UserInfoDetailBO userInfoDetailBO);

    /**
     * 根据用户信息查询用户详情信息
     *
     * @param userId
     * @return
     */
    UserInfoDetailBO queryUserInfoDetailById(Long userId);

    /**
     * 根据用户信息查询用户详情信息列表 - 最大100个数据
     *
     * @param userIdList
     * @return
     */
    List<UserInfoDetailBO> queryUserInfoDetailByIdList(List<Long> userIdList);

    /**
     * 根据用户Id查询用户基础信息
     *
     * @param userId
     * @return
     */
    UserSimplyInfoBO querySimplyUserInfoById(Long userId);

    /**
     * 根据用户Id列表查询用户基础信息
     *
     * @param userIdList
     * @return
     */
    List<UserSimplyInfoBO> batchQuerySimplyUserInfo(List<Long> userIdList);

    /**
     * 更新用户头像
     *
     * @param userId
     * @param headImg
     * @return
     */
    Boolean updateUserHeadImg(Long userId, String headImg);
}
